🎖️GitЯра🎖️
Node / meshtastic / Meshtastic-Android / files / feature / intro / src / commonTest / kotlin / org / meshtastic / feature / intro / IntroViewModelTest.kt
Displaying Raw • Download
feature/intro/src/commonTest/kotlin/org/meshtastic/feature/intro/IntroViewModelTest.kt renovate/actions-setup-java-5.x (f17e586c) Text, 2.34 KB
T8b949e/*
* Copyright (c) 2026 Meshtastic LLC
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
Tff7b72package T7ee787org.meshtastic.feature.intro
Tff7b72import T7ee787kotlin.test.BeforeTest
Tff7b72import T7ee787kotlin.test.Test
Tff7b72import T7ee787kotlin.test.assertEquals
Tff7b72import T7ee787kotlin.test.assertNull
T8b949e/**
* Bootstrap tests for IntroViewModel.
*
* Tests the intro navigation flow logic.
*/
Tff7b72class T56d364IntroViewModelTest Tb4b4b4{
Tff7b72private Tff7b72lateinit Tff7b72var Te6edf3viewModelTb4b4b4: Te6edf3IntroViewModel
Tf0883e@BeforeTest
Tff7b72fun Td2a8ffsetUpTb4b4b4(Tb4b4b4) Tb4b4b4{
Te6edf3viewModel Tff7b72= Te6edf3IntroViewModelTb4b4b4(Tb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestWelcomeNavigatesNextToBluetoothTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3WelcomeTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72falseTb4b4b4)
Te6edf3assertEqualsTb4b4b4(Te6edf3BluetoothTb4b4b4, Te6edf3nextTb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestBluetoothNavigatesToLocationTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3BluetoothTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72falseTb4b4b4)
Te6edf3assertEqualsTb4b4b4(Te6edf3LocationTb4b4b4, Te6edf3nextTb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestLocationNavigatesToNotificationsTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3LocationTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72falseTb4b4b4)
Te6edf3assertEqualsTb4b4b4(Te6edf3NotificationsTb4b4b4, Te6edf3nextTb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestNotificationsWithPermissionNavigatesToCriticalAlertsTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3NotificationsTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72trueTb4b4b4)
Te6edf3assertEqualsTb4b4b4(Te6edf3CriticalAlertsTb4b4b4, Te6edf3nextTb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestNotificationsWithoutPermissionNavigatesToNullTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3NotificationsTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72falseTb4b4b4)
Te6edf3assertNullTb4b4b4(Te6edf3nextTb4b4b4, Ta5d6ff"Ta5d6ffNotifications should navigate to null when permissions not grantedTa5d6ff"Tb4b4b4)
Tb4b4b4}
Tf0883e@Test
Tff7b72fun Td2a8fftestCriticalAlertsIsTerminalTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72val Te6edf3next Tff7b72= Te6edf3viewModelTb4b4b4.Te6edf3getNextKeyTb4b4b4(Te6edf3CriticalAlertsTb4b4b4, Te6edf3allPermissionsGranted Tff7b72= Tff7b72trueTb4b4b4)
Te6edf3assertNullTb4b4b4(Te6edf3nextTb4b4b4, Ta5d6ff"Ta5d6ffCriticalAlerts should not navigate furtherTa5d6ff"Tb4b4b4)
Tb4b4b4}
Tb4b4b4}
Served by rngit 1.5.0 - Generated in 0.06s